﻿using Signit.Sdk.Entity;
using Signit.Sdk.Types;

namespace Signit.Sdk.Http.Envelope
{
    /// <summary>
    /// 签署文件详细信息。包含：待签文件i唯一标识ID、该文件排列顺序、签署文件的数据、
    /// 文件名、文件拥有者访问口令、文件类型、文件是否作为附件、自定义元数据信息
    /// </summary>
    public class EnvelopeFile
    {
        /// <summary>
        /// 待签文件唯一标识ID.
        /// </summary>
        public string Id { get; set; }

        /// <summary>
        /// 该文件排列顺序.
        /// </summary>
        public int Sequence { get; set; }

        /// <summary>
        /// 签署文件的数据.
        /// </summary>
        public BaseFileData Data { get; set; }

        /// <summary>
        /// 文件名.
        /// </summary>
        public string FileName { get; set; }

        /// <summary>
        /// 文件拥有者访问口令.
        /// </summary>
        public string FileOverPassin { get; set; }

        /// <summary>
        /// 文件类型.
        /// 对应枚举：FileType
        /// </summary>
        public FileType ContentType { get; set; }

        /// <summary>
        /// 文件是否作为附件.
        /// 默认为false
        /// </summary>
        public bool IsAttached { get; set; }

        /// <summary>
        /// 自定义元数据信息.
        /// </summary>
        public string Metadata { get; set; }

    }
}